// pages/personnel/add/addPersoonel.ts
import Dialog from '@vant/weapp/dialog/dialog';
Page({

  /**
   * 页面的初始数据
   */
  data: {
    pageType: 'add', // 可选值为 add、eidt、read
    name: '',
    phone: '',
    address: '',
    profession: '',
    ageLimit: '',
    pay: '',
    sexRadio: '1',
    workType: '1',
    isAdmin: '2',
    show: false,
    standing: '',
    actions: [
      {
        name: "收纳师",
      },
      {
        name: "空间规划师",
      },
    ],
    fileList: [],
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad(options: { pageType: 'add' | 'edit' | 'read' , ID: string }) {
    let { pageType, ID } = options
    if (pageType) {
      this.modelChage(pageType)
      this.pageTypeFunOption(pageType, ID);
    }
  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady() {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow() {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide() {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload() {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh() {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom() {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage() {

  },

  pageTypeFunOption(type: 'add' | 'edit' | 'read', ID:string) {
    const option = {
      'add': () => {
        console.log('新增')
        wx.setNavigationBarTitle({
          title: '新增人员'
        })
      },
      'edit': (ID:string) => {
        console.log('编辑', ID)
        wx.setNavigationBarTitle({
          title: '修改人员'
        })
      },
      'read': (ID:string) => {
        console.log('查看', ID)
        wx.setNavigationBarTitle({
          title: '查看人员'
        })
      }
    }
    option[type](ID);
  },

  onChange(event: any) {
    const type = event.currentTarget.dataset.type
    this.setData({
      [type]: event.detail,
    });
  },
  onClickSelect() {
    this.setData({
      show: true
    })
  },
  onClickSelectIcon(event: any) {
    this.setData({ show: true });
    console.log(event.detail);
  },
  onSelect(event) {
    this.setData({
      standing: event.detail.name
    })
    this.setData({ show: false })
  },
  onClose() {
    this.setData({ show: false });
  },
  onSubmit: function (event) {
    console.log('提交', event.detail)
  },
  modelChage(model: 'add' | 'edit' | 'read'){
    this.setData({
      pageType: model
    })
  },
  openEdit() {
    this.modelChage('edit');
  },
  delPersonnel() {
    Dialog.confirm({
      title: '确认删除',
      message: '删除后人员将从人员列表中移除',
    })
      .then(() => {
        // on confirm
      })
      .catch(() => {
        // on cancel
      });
  },
  delImage(index: number) {
    const temp = this.data.fileList;
    temp.splice(index,1)
    this.setData({
      fileList: temp
    })
  },
  afterRead(event) {
    const self = this;
    const { file } = event.detail;
    // 当设置 mutiple 为 true 时, file 为数组格式，否则为对象格式
    wx.uploadFile({
      url: 'https://example.weixin.qq.com/upload', // 仅为示例，非真实的接口地址
      filePath: file.url,
      name: 'file',
      formData: { user: 'test' },
      success(res) {
        // 上传完成需要更新 fileList
        const { fileList = [] } = self.data;
        const item = { ...file, url: res.data };
        fileList.push(item);
        self.setData({ fileList });
        self.triggerEvent('uploadSuccess',{
          file: item,
          fileList: self.data.fileList
        })
      },
    });
  },
})